home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 402_01 / cforms-2.2 / src / Makefile < prev    next >
Encoding:
Makefile  |  1993-07-20  |  1.4 KB  |  77 lines

  1. #
  2. #        M A K E F I L E
  3. #        ---------------
  4. #
  5. # Description:
  6. #    Compiles and links CForms
  7. #
  8. # @(#) Makefile,v 1.24 1993/07/20 15:53:48 lasse Exp
  9. #
  10.  
  11. # Installation places.
  12. #
  13. DEST        = ..
  14.  
  15. DESTBIN     = $(DEST)/bin
  16. DESTLIB     = $(DEST)/lib
  17. DESTINC     = $(DEST)/include
  18.  
  19. # -----------------------------------------------
  20.  
  21. FORMLIB = $(DESTLIB)/libcforms.a
  22. CFC     = cfc
  23. CFL     = cfl
  24. FORMHDR = $(DESTINC)/cforms.h
  25. RANLIB = echo
  26.  
  27. MAKEDEPEND = makedepend
  28.  
  29. OFILES =    comp.o output.o token.o y.tab.o stmt.o
  30.  
  31. HFILES = $(FORMHDR) comp.h token.h config.h
  32.  
  33. COMPILE.c = $(CC) -c $(CFLAGS)
  34.  
  35.  
  36. all: $(CFC) $(CFL) $(FORMLIB)
  37.  
  38. $(CFC): $(OFILES)
  39.     $(CC) $(CFLAGS) -o $(CFC) $(OFILES) $(LDFLAGS)
  40.  
  41. $(CFL): cfl.o
  42.     $(CC) $(CFLAGS) -o $(CFL) cfl.o
  43.  
  44. install: all
  45.     -test -d $(DESTBIN) || mkdir $(DESTBIN)
  46.     -cmp -s $(CFC) $(DESTBIN)/$(CFC) || cp $(CFC) $(DESTBIN)
  47.     -cmp -s $(CFL) $(DESTBIN)/$(CFL) || cp $(CFL) $(DESTBIN)
  48.  
  49. $(FORMLIB): $(FORMLIB)(cflib.o)
  50.     $(RANLIB) $(FORMLIB)
  51. $(FORMLIB)(cflib.o): $(HFILES)
  52.  
  53. y.tab.o: y.tab.c
  54. y.tab.c: cforms.y keys.h
  55.     $(YACC) cforms.y
  56.  
  57. clean:
  58.     -rm -f $(OFILES) $(CFC) $(CFL) $(FORMLIB) cfl.o y.tab.c y.tab.o
  59.  
  60. depend: $(OFILES:.o=.c)
  61.     $(MAKEDEPEND) $(OFILES:.o=.c)
  62.  
  63. $(OFILES): $(HFILES)
  64.  
  65. comp.o: config.h 
  66. comp.o: token.h comp.h $(DESTINC)/cforms.h ../patchlevel.h
  67. output.o: config.h 
  68. output.o: token.h comp.h $(DESTINC)/cforms.h
  69. output.o: ../patchlevel.h
  70. token.o: config.h 
  71. token.o: token.h
  72. stmt.o: config.h
  73. stmt.o: token.h
  74. stmt.o: comp.h
  75.